#define _CRT_SECURE_NO_WARNINGS 1
#include<iostream>
using namespace std;


#include"priority.h"

int main()
{
	fx::priority_queue<int,vector<int>,fx::Greater<int>> pq;
	pq.push(1);
	pq.push(2);
	pq.push(10);
	pq.push(9);
	pq.push(3);
	pq.push(4);
	pq.push(5);
	pq.push(6);
	pq.push(7);
	pq.push(8);

	cout << pq.size() << endl;

	while (!pq.empty())
	{
		cout << pq.top() << " ";
		pq.pop();
	}

	cout << endl;
	return 0;
}


//int main()
//{
//	size_t n = 0;
//	cout << (n - 1) / 2 << endl;
//	return 0;
//}